home *** CD-ROM | disk | FTP | other *** search
/ Aminet 1 (Walnut Creek) / Aminet - June 1993 [Walnut Creek].iso / aminet / hard / hack / turbo2088.lzh / 2088MOD.TXT next >
Text File  |  1992-02-20  |  11KB  |  207 lines

  1.                  SPEEDING UP THE A2088 BRIDGEBOARD
  2.                             by Eddy Olk
  3.                            January 1992
  4.  
  5.  
  6. ABSTRACT
  7. The A2088 bridgeboard is IBM XT compatible, especially with respect to speed
  8. unfortunately. So any speedup is welcome. Those with unlimited supply of
  9. money will go for a turbo AT bridgeboard of course. But for us cheapies with
  10. a plain A2088 there is some hope! This text describes how the A2088 bridgeboard
  11. can be (easily) run at 7.15 MHz or even 9.54 MHz with minor modifications.
  12. However, you must have a bridgeboard with the Faraday FE2010A (watch the A!)
  13. chip. If I'm not mistaken the newer A2088s are equipped with this chip.
  14.  
  15.  
  16. DISCLAIMER
  17. Of course: I can't guarantee the proper working of any of the modifications
  18. described in this file nor can I be held responsible for any related damage.
  19. I've done my best to describe the necessary speedup modifications (for a
  20. rev 3 board) as detailed and understandable as possible.
  21. I do advise however you only apply the modifications when you know what you're
  22. doing and have some experience with electronics. Don't risk ruining your
  23. bridgeboard, 4.77 MHz is still better than 0 MHz :-).
  24.  
  25.  
  26. TECHNICAL INFO
  27. The FE2010(A) is a multi-function chip in a 68-pin PLCC package and is almost a
  28. complete PC on a single chip. Among other things, it incorporates the 8237 (DMA
  29. controller), 8253 (timer/counter), 8254 (clock oscillator), 8255 (PIO) and 8259
  30. (PIC) ICs used in the IBM XT.
  31. The FE2010 chip (without the A) can only run a 8088 at 4.77 MHz. However, the
  32. FE2010A, a pin-compatible enhanced version of the FE2010, allows either a V20
  33. or 8088 to run at clock speeds of 4.77 and 7.15 MHz when using a 14.31818 MHz
  34. crystal/oscillator or at 4.77, 7.15 and 9.54 MHz when using a 28.63636 MHz
  35. crystal/oscillator. This input frequency is indicated by pin 16 (not used on
  36. FE2010). This pin must be pulled up with a 4.7K resistor to +5V when supplying
  37. 14.31818 MHz and must be tied to 0V when using a frequency of 28.63636 MHz.
  38.  
  39. The FE2010A has an extended configuration control register to allow switching
  40. between CPU clock speeds. This (write only) register is located at I/O address
  41. 063H. The functions of the data bits of this register are summarized in Table 1.
  42.  
  43.           data bit | function
  44.           ---------+----------
  45.               0    | disable parity
  46.               1    | 8087 present (enable 8087 NMI)
  47.               2    | 256K RAM (1 bank)
  48.               3    | lock register (bits 0-4)
  49.               4    | 512K RAM size (2 banks)
  50.               5    | fast mode (0=semi-fast, 1=fast)
  51.               6    | 7.15 MHz clock
  52.               7    | 9.54 MHz clock
  53.  
  54.      Table 1: Function of data bits of configuration register.
  55.  
  56.  
  57. SOFTWARE
  58. Since the FE2010A always clocks the CPU at 4.77 MHz after a reset and the BIOS
  59. doesn't support the faster execution modes of the FE2010A, we have to fiddle
  60. with the configuration register (see technical info) ourselves to run at the
  61. higher speeds. I've written two programs: BIOSEXT.COM and CPUCLK.COM
  62. BIOSEXT.COM is stay-resident and extends the BIOS and allows you switching the
  63. clock speed from the keyboard by pressing the following keys simultaneously:
  64.  
  65.           <ctrl>-<alt>-S for 4.77 MHz
  66.           <ctrl>-<alt>-M for 7.15 MHz
  67.           <ctrl>-<alt>-F for 9.54 MHz
  68.  
  69. With CPUCLK.COM you can change the cpu clock speed under program control, most
  70. likely in a batch file.
  71. You must give a digit as argument: 0 for 4.77, 1 for 7.15 or 2 for 9.54 MHz.
  72. Put both programs in your AUTOEXEC.BAT, e.g.:
  73.  
  74.         biosext
  75.         rem install bios extension
  76.         cpuclk 2
  77.         rem switch to 9.54 MHz
  78.  
  79. I've included both sources and executables of the programs.
  80.  
  81.  
  82. YOU HAVE A FE2010 NOT A FE2010A
  83. If you've sadly discovered you have the old FE2010 and not the enhanced FE2010A
  84. (BTW the chip is near the CPU, see the photographs in the introduction section
  85. and Appendix F of your A2088 user's guide) you have three options:
  86.  
  87. 1. do nothing: least trouble, least satisfaction :-).
  88. 2. not replace the FE2010 but still get a speedup by replacing the 14.31818 MHz
  89.    crystal with a faster one, e.g. 22 or 24 MHz. This is essentially what the
  90.    German firm X-Pert offers (even for bridgeboards with a FE2010A!). This
  91.    has some drawbacks, e.g. the faster running timers (SI still reports
  92.    index of 1.0!). Also when using the floppy drive, you must switch back
  93.    to 4.77 MHz since the floppy interface will not work reliable at the higher
  94.    speed. So what you need here is two oscillators, 14.31818 and 22-24 MHz,
  95.    and a multiplexer controlled by a switch and/or the MOTORON signal of the
  96.    floppy. If you want to build this, you will find instructions and a
  97.    schematic in the German AMIGA (Markt & Technik) sonderheft 13, entitled
  98.    "Tips & Tools". I can't help you further here, but there is a last option!
  99. 3. replace the FE2010 with a FE2010A and go for the (easy) 7.15 MHz or
  100.    (slightly harder) 9.54 MHz modification. You can also use a V20 now.
  101.    The main problem here will be to obtain the FE2010A. Unfortunately, I can't
  102.    help you much here. Try a store specialized in electronic components for
  103.    PCs. If it helps: the chip is manufactured by Faraday.
  104.    When you have somehow acquired a FE2010A, you have to make some
  105.    modifications to your A2088 before replacing the FE2010. The FE2010A is pin
  106.    compatible with the FE2010 but some internal pull-up resistors present in
  107.    the FE2010 were left out in the FE2010A. This affects pins 12,13 and 16.
  108.    Pin 12 and 13 are connected to J1, the default display jumper. For proper
  109.    operation you have to pull-up pins 1 and 2 of J1 (see Appendix H of the
  110.    A2088 user's guide) with a 4K7 (4.7 KOhm) resistor to +5V. However, I didn't
  111.    encounter problems using the FE2010A without the pull-up resistors.
  112.    Pin 16 indicates the input frequency of the FE2010A: 14.31818 (pull-up with
  113.    4K7 to +5V) or 28.63636 MHz (tie to 0V).
  114.  
  115.  
  116. RUNNING A2088 AT 7.15 MHZ
  117. This is simple! You must:
  118. 1. Replace the 5MHz 8088 with a 8MHz 8088 or V20. You may even want to try
  119.    running the original 8088 at 7.15 MHz. Although I haven't tried this myself,
  120.    I know several people who are succesfully running their original 8088 at
  121.    7.15MHz.
  122. 2. Run the CPUCLK.COM program on your bridgeboard with option 1 to set the cpu
  123.    clock to 7.15 MHz.
  124.  
  125.  
  126. MODIFY A2088 TO RUN AT 9.54 MHZ
  127. Here's where a soldering-iron comes in handy! The following steps are needed:
  128. 1. desolder the 14.31818 MHz crystal near the bracket.
  129. 2. replace it with a 28.63636 MHz crystal (not sure this will work) or use a
  130.    28.63636 MHz oscillator. Connect pins 1 and 7 of the oscillator with 0V,
  131.    pin 14 with +5V and pin 8 to the lower contact hole (the one nearest to the
  132.    edge connector) of the (now desoldered) 14.31818 MHz crystal.
  133.    Also put a 100nF (nano Farad) decoupling capacitor between pins 7 and 14.
  134. 3. tie pin 16 of FE2010A to 0V.
  135.    Figure 1 shows the contacts              (top)
  136.    of the FE2010A socket seen            ooooooooooo
  137.    from the back of the                 ooooooooooooo
  138.    bridgeboard. Pin 16 is               oo         oo
  139.    marked with an asterisk (*).         oo         oo
  140.    Check with an ohmmeter if            oo         oo
  141.    you're not sure!                     oo         oo
  142.                                         oo         oo
  143.                                         oo         oo
  144.    Figure 1: FE2010A socket seen        oo         oo
  145.              from backside, pin 16      oo         oo
  146.              marked with *.             oo         oo
  147.                                         ooooooooooooo
  148.                                          oooooooo*oo
  149.                                            (bottom)
  150.  
  151. 4. replace the original 8088 with a 10 MHz 8088 or (better) V20, a 8 MHz V20
  152.    will work too (and may be cheaper). Before inserting the new 8088/V20 you
  153.    must bend pin 19 (clock input) a little bit outwards so it will not stick
  154.    in the socket. Do the same with the 8087, if you have one.
  155. 5. connect pin 19 of the 8088/V20 (and pin 19 of the 8087, if present) to
  156.    pin 15 of U8 (74LS244). This pin carries the unbuffered cpu clock signal
  157.    from the FE2010A (also pin 19) and must be used instead of the buffered
  158.    clock signal connected originally to let it all work at 9.54 MHz.
  159.    U8 is the lower-right one of the four 20-pin ICs below the 8088/V20.
  160. 6. run the CPUCLK.COM program with options 0,1,2 to run the bridgeboard at
  161.    4.77, 7.15 and 9.54 MHz respectively.
  162.  
  163.  
  164. PROBLEMS
  165. The only serious problem I've run into is that the floppy interface only
  166. works reliable at 4.77 MHz. Most of the time it works at other speeds but it
  167. occasionally fails. However, DOS doesn't report this but ZOO, for instance,
  168. sometimes gives CRC errors when unZOOing from floppy. I don't know whether
  169. this is a hardware or a software problem. I do remember some (earlier) turbo
  170. PC clones having this problem too. Be sure to switch to 4.77 MHz when using
  171. the floppy!
  172.  
  173. Furthermore, I'm not sure a 8 or 10 MHz 8087 will work in the faster
  174. bridgeboard. I don't expect problems however, but perhaps someone could verify
  175. this! BTW make sure the 8087 clock (pin 19) is provided with the unbuffered
  176. clock signal, i.e. connect it to pin 19 of 8088/V20.
  177.  
  178. Another problem you may experience (I didn't) is that after switching to
  179. another speed for the first time with CPUCLK or BIOSEXT, you get a (BIOS)
  180. message which says a NMI interrupt was detected and asks whether to shut it
  181. off or not. If this message annoys you, use the CPUCLK-.COM and BIOSEXT-.COM
  182. programs. They explicitly disable the NMI interrupt in the extended
  183. configuration register so you will not get the message.
  184.  
  185. CONCLUSION
  186. Well, I think the modifications described in this file are pretty neat.
  187. A 50% speedup is possible by just running the software while a 100% speedup
  188. requires only minor modifications to the hardware.
  189. I have my fully equipped A2088 (VGA card, hardcard, multi I/O card,
  190. 512K 150ns RAM, 128K 120ns dual-port RAM and 8 MHz V20) running at 9.54 MHz
  191. since January 1991 and besides the problem with the floppy, it runs perfectly.
  192. Perhaps someone (I don't have time unfortunately) is willing to extend the
  193. BIOSEXT.COM program to automatically (temporary) switch back to 4.77 MHz when
  194. accessing the floppy.
  195.  
  196. If you have any questions/remarks regarding the modifications I described,
  197. you can reach me via
  198.  
  199.                   email: eddy@duteca.et.tudelft.nl
  200.  
  201.                    mail: Eddy Olk
  202.                          Beatrixstraat 8
  203.                          3264 XB  Nieuw-Beyerland
  204.                          The Netherlands
  205.  
  206. Enjoy!!
  207.